﻿// ***********************************************************************
// Assembly         : INNOVACALL.Framework.Common
// Author           : LJO+01 (Laurent Jordi)
// Created          : 06-05-2013
// Last Modified By : LJO+01 (Laurent Jordi)
// Last Modified On : 06-05-2013
// ***********************************************************************
// <copyright file="HtmlMetaOptionAttribute.cs" company="Copyright © Innovacall 2011">
//     Copyright (c) Copyright © Innovacall 2011. All rights reserved.
// </copyright>
// <summary></summary>
// ***********************************************************************
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using INNOVACALL.Framework.Common.MVCHelpers.Localization;

namespace INNOVACALL.Framework.Common.HTMLHelpers
{
    #region HtmlMetaOptionAttribute
    /// <summary>
    /// Simple attribute class for storing String Values
    /// </summary>
    [AttributeUsage(AttributeTargets.All)]
    public class HtmlMetaOptionLocalizedAttribute : DisplayNameAttribute
    {
        /// <summary>
        /// The _HTML value
        /// </summary>
        private string _htmlValue;
        /// <summary>
        /// The _description
        /// </summary>
        private string _description;

        /// <summary>
        /// Initializes a new instance of the <see cref="HtmlMetaOptionLocalizedAttribute"/> class.
        /// </summary>
        /// <param name="htmlValue">The HTML value.</param>
        /// <param name="resourceManagerProvider">The resource manager provider.</param>
        /// <param name="resourceKey">The resource key.</param>
        public HtmlMetaOptionLocalizedAttribute(string htmlValue, Type resourceManagerProvider, string resourceKey)
            : base(CommonLocalization.LookupResource(resourceManagerProvider, resourceKey))
        {
            _htmlValue = htmlValue;
        }

        /// <summary>
        /// Gets the value.
        /// </summary>
        /// <value>The HTML value.</value>
        public string HTMLValue
        {
            get { return _htmlValue; }
        }

        /// <summary>
        /// Gets the value.
        /// </summary>
        /// <value>The description.</value>
        public string Description
        {
            get { return base.DisplayName; }
        }
    }
    #endregion
}
